在Nodejs 中使用mongoose连接MongoDB数据库时,报如下错误
Could not connect to MongoDB MongooseServerSelectionError: connect ECONNREFUSED ::1:27017
你的程序试图连接到地址 ::1,这个地址是 IPv6 地址,对应于 localhost。然而,MongoDB 没有在 IPv6 地址上监听,而只在 IPv4 地址(即 127.0.0.1)上监听。
将连接的url中的localhost改为127.0.0.1即可
原来的代码:
var mongoose = require("mongoose");
mongoose.connect("mongodb://localhost:27017/travel")
.then(() => {
console.log("数据库连接成功!")
})
.catch((err) => {
console.log("数据库连接失败!", err)
})
module.exports = mongoose;
改为:
var mongoose = require("mongoose");
mongoose.connect("mongodb://127.0.0.1:27017/travel")
.then(() => {
console.log("数据库连接成功!")
})
.catch((err) => {
console.log("数据库连接失败!", err)
})
module.exports = mongoose;